package org.study.event.core.transaction.handler;

import org.study.event.core.common.EventMessage;

/***
 * 处理各种事务事件的方法
 * 
 * @author 陈波
 *
 */
public interface TransactionalEventHandler {

	/***
	 * 处理事务提交操作
	 * 
	 * @return
	 */
	void afterCommitHandle(EventMessage event);

	/***
	 * 处理事务提交前的操作
	 * 
	 * @return
	 */
	void beforeCommitHandle(EventMessage event);

	/***
	 * 提交完毕,或者提交完毕的操作
	 * 
	 * @return
	 */
	void afterCommptionHandle(EventMessage event);

	/***
	 * 事务回滚之后处理
	 * 
	 * @param event
	 * @return
	 */
	void  afterRollBackHandle(EventMessage event);

}
